Estoy empezando a aprender a reaccionar con REST Countries API. Tengo que enfrentar el error "TypeError no detectado: inputArgs[0].match no es una función" en la consola. además, los datos de la consola muestran resultados duplicados. puedes ver la captura de pantalla .
aquí está mi código
import { useEffect, useState } from "react"; import "./App.css"; const gridStyle = { display: "grid", gridTemplateColumns: "repeat(4, 1fr)", gridGap: "20px", }; function App() { return ( <div className="App"> <Countries></Countries> </div> ); } function Countries() { const [countries, setCountries] = useState([]); useEffect(() => { fetch("https://restcountries.com/v3.1/all") .then((res) => res.json()) .then((data) => setCountries(data)); }, []); return ( <div className="all-countries"> <p>{countries.length}</p> <div style={gridStyle} className="country-container"> {countries.map((country) => ( <Country country={country}></Country> ))} </div> </div> ); } function Country({ country }) { console.log(country); return ( <div className="country"> <img src={country.flags.png} alt="" /> <h1>{country.name.common}</h1> <p>{country.name.official}</p> <p>{country.region}</p> <p>{country.population}</p> <button>Details</button> </div> ); } <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>Solucioné el error pasando una cadena como primer argumento.
console.log('', data)Creo que esto se rompió por una confirmación reciente en la extensión de Chrome React Dev Tools: https://github.com/facebook/react/commit/852f10b5cf188f8aa797f9a809f0caeaa95a4231
Esperemos que ese compromiso se revierta pronto.
Tuve un problema similar, para mí, el error real estaba en el seguimiento de la pila antes del que dice "Error de tipo no detectado InputArgs[0].match ..."
Así que borre la consola, luego ejecútela nuevamente para obtener el seguimiento de la pila y luego desplácese hacia arriba para ver el error.
HTH